package com.xlh.virtualization.vo;

import io.swagger.annotations.ApiModel;
import lombok.Builder;
import lombok.Data;

import java.util.List;

/**
 * @author cheer
 */
@ApiModel("查看镜像分配信息")
@Data
@Builder
public class ImageAllocationVO {

    /**
     * 是否分配
     */
    private Boolean allocated;

    /**
     * 实验模式
     */
    private Integer mode;

    /**
     * 单节点或主节点镜像
     */
    private ImageCascader image;

    /**
     * 单节点或主节点cpu
     */
    private Integer cpu;

    /**
     * 单节点或主节点内存
     */
    private Integer ram;

    /**
     * 单节点或主节点是否使用gpu
     */
    @Deprecated
    private Boolean gpu;

    /**
     * 从节点数量
     */
    private Integer slaveSize;

    /**
     * 从节点镜像
     */
    private List<ImageCascader> slaveImages;

    /**
     * 从节点cpu
     */
    private Integer slaveCpu;

    /**
     * 从节点内存
     */
    private Integer slaveRam;

    /**
     * 从节点是否使用gpu
     */
    @Deprecated
    private Boolean slaveGpu;

    @Data
    public static class ImageCascader {

        private Integer imageSource;

        private Long imageId;
    }
}
